home *** CD-ROM | disk | FTP | other *** search
/ Aminet 45 / Aminet 45 (2001)(GTI - Schatztruhe)[!][Oct 2001].iso / Aminet / game / role / gumband.lha / Gumband217b / help / version.txt < prev    next >
Text File  |  2001-08-05  |  21KB  |  474 lines

  1. So you're looking for version information on Gumband, eh?  Well, as the 'V'
  2. command says, this is v2.1.4.  Why the large number?  Well, that's the
  3. version number of ZAngband I used as the base for Gumband.
  4.  
  5. First question on your lips, or at your fingers, is probably "Why call it
  6. 'Gumband?' Sounds rather silly to me."  Well, each variant (not that this
  7. qualifies as much more than a sub-variant) pretty much requires a name, and
  8. since I've been known as 'Gumby' online (and sometimes offline :) since the
  9. summer of 1989, I figured it would do.  It stays under the 8-character file-
  10. name limit for MS-DOS, it's easy to pronounce (wonder if 'gum' has any
  11. actual meaning in Sindarin? :), and it indicates both the author and that it
  12. is a descendant of Angband.
  13.  
  14. Thanks to the folks in rec.games.roguelike.angband and on the #angband IRC
  15. channel for their help on figuring out where things are in the code, for
  16. putting up with my rather pathetic questions about how to get things done in
  17. C  [I swear, I'm really going to learn how to program sometime in 2001 :],
  18. and for their other suggestions and comments.  Special thanks to Eric Bock
  19. for guiding me through setting up new blocks of summoning code, and to
  20. Kieron Dunbar for that auto-cursing patch...
  21.  
  22. Well, that's all you're getting as far as version information goes. For more
  23. information on how this differs from ZAngband 2.1.1c, the code-base I began
  24. with, see the gumband-<ver>.txt file down by the executable...
  25.                                                        --- Gumby
  26.  
  27. Because Topi would probably kill me if I mutilated it, I've left his
  28. ZAngband version information intact. :) The information for standard (or
  29. "Vanilla," as it's now commonly called) Angband has also been left intact.
  30.                                                          - G
  31.  
  32. === Zangband History and Information ===
  33.  
  34. The seeds of Zangband lie in an obsolete and long ago vanished PC variant
  35. (somewhat misleadingly) dubbed Angband--. The variant was written by a
  36. hopeless Angband addict (previously Moria veteran and winner) who got 
  37. bored with the standard monsters and wanted to introduce some new 
  38. monsters. Angband-- was based on the PC Angband 1.31 sources, and 
  39. it was set in Roger Zelazny's 'Amber' universe.
  40.  
  41. Later this individual got a better computer and learned to code, and 
  42. produced the PC Zangband, and most Angband-- monsters survived into
  43. PC Zangband 1.0. PC Zangband 1.0 was the first PC Angband to introduce
  44. (simple, font-based) graphics, which were also used in the graphical
  45. PC Angband 1.40. 
  46.  
  47. Yet this individual was still not cured of his addiction... his almost
  48. as strong addiction to the Civilization style fantasy strategy game 
  49. 'Master of Magic' inspired him to write a new magic system. The current
  50. version of Zangband (2.*) incorporates this magic system, as well as
  51. the best features from Angband-- and PC Zangband 1.0. It is based on
  52. the Angband 2.8.1 sources (by Ben Harrison), and is therefore portable
  53. to other systems (unlike the earlier versions which were for dos-pc's
  54. only).
  55.  
  56. Incidentally, this person (me, Topi Ylinen) also thought that the 
  57. standard Angband monsters were too easy, which led him to introduce
  58. such monsters as Death swords, Cyberdemons and Great wyrms of power...
  59.  
  60. Special thanks -- The current version of Zangband might not have come into
  61. existence without the significant help from these excellent Angband
  62. programmers:
  63.  
  64.         Ben Harrison, for obvious reasons.
  65.  
  66.         Greg Wooledge, who pointed out a bug in the dos compiler,
  67.         which was preventing my progress with the first 2.* version
  68.         of Zangband.
  69.  
  70.         Julian Lighton, who must have sent me more ideas, patches, and
  71.         bug reports, than all the others toghether.
  72.  
  73.         Robert Ruehlmann, whose nice new main-dos.c enables SVGA
  74.         graphics and even windows in ms-dos.
  75.  
  76.         Paul Sexton, who is responsible for about 50% of the new code
  77.         in 2.1.0.
  78.  
  79.     Heino Vander Sanden, who created the quest-code and
  80.     Dean Anderson, whose patch showed me the quickest way to
  81.     implement the quests.
  82.  
  83.     Adam Bolt, who created the new ZAngband tiles.
  84.  
  85.     Benny S. Hoffman, Aram Harrow, Greg Harvey, and many others
  86.     for bugreports, patches, bugfixes, and ideas.
  87.  
  88.  
  89. ZAngband 2.1.0c was Topi's last version, he has got a job and and
  90. doesn't have enough time anymore to continue work on ZAngband.
  91. He asked for a new maintainer and I was the one to take over the task.
  92. May I introduce myself, my name is Robert Ruehlmann, I'm the creator
  93. of the graphical Angband versions for DOS and webmaster of
  94. "Thangorodrim - The Angband Page" ("http://thangorodrim.angband.org").
  95.  
  96. === Brief Version History (of standard Angband) ===
  97.  
  98. First came "VMS Moria", by Robert Alan Koeneke (1985).
  99.  
  100. Then came "Umoria" (Unix Moria), by James E. Wilson (1989).
  101.  
  102. In 1990, Alex Cutler and Andy Astrand, with the help of other students
  103. at the University of Warwick, created Angband 1.0, based on the existing
  104. code for Umoria 5.2.1.  They wanted to expand the game, keeping or even
  105. strengthening the grounding in Tolkien lore, while adding more monsters
  106. and items, including unique monsters and artifact items, plus activation,
  107. pseudo-sensing, level feelings, and special dungeon rooms.
  108.  
  109. Over time, Sean Marsh, Geoff Hill, Charles Teague, and others, worked on
  110. the source, releasing a copy known as "Angband 2.4.frog_knows" at some
  111. point, which ran only on Unix systems, but which was ported by various
  112. people to various other systems.
  113.  
  114. Then Charles Swiger (cs4w+@andrew.cmu.edu) attempted to clean up the mess,
  115. resulting in several versions, starting sometime around November, 1993, with
  116. Angband 2.5.1 (more or less) and leading up to Angband 2.6.2 in late 1994.
  117. Several people ported (the primarily Unix/NeXT centered) Angband 2.6.1 to
  118. other platforms, including Keith Randall, who made a Macintosh port that
  119. added support for color usage.  Some of the changes during this period were
  120. based on suggestions from the "net", PC Angband 1.40, UMoria 5.5, and some
  121. of the Angband "variations", such as FAngband.
  122.  
  123. Finally, I (Ben Harrison) took over in late 1994 when Charles Swiger left.
  124. Initially my intention was simply to clean up what had become, after ten
  125. years, a rather unholy mess, but the deeper I delved into the code, the
  126. more it became apparent that drastic changes were needed, so, starting
  127. with MacAngband 2.6.1, I began a more or less total rewrite, resulting,
  128. eventually, in Angband 2.7.0, released around January first, 1995.
  129.  
  130. Angband 2.7.0 was a very clean (but very buggy) rewrite that, among other
  131. things, allowed extremely simple porting to multiple platforms, starting
  132. with Unix and Macintosh, and by the time most of the bugs were cleaned up,
  133. in Angband 2.7.2, including X11, and various IBM machines.  Angband 2.7.4
  134. was released to the "ftp.cis.ksu.edu" site, and quickly gained acceptance,
  135. perhaps helped by the OS2 and Windows and Amiga and Linux ports.  Angband
  136. 2.7.5 and 2.7.6 added important capabilities such as macros and user pref
  137. files, and continued to clean up the source.  Angband 2.7.8 was designed
  138. to supply another "stable" version that we can all give to our friends,
  139. with new "help files" and "spoiler files" for the "online help", plus a
  140. variety of minor tweaks and some new features.  Angband 2.7.9 optimized
  141. a few things, and tweaked a few other things, and cleaned up a few other
  142. things, and introduced a few minor semantic changes.
  143.  
  144. It is very hard to pin down, along the way from 2.6.2 to 2.7.0, and thence
  145. to 2.7.8, exactly what was added exactly when.  Most of these steps involved
  146. so many changes as to make "diff files" not very useful, since often the diff
  147. files were as long as the code itself.  Most of the changes, with the notable
  148. exception of the creation of the new "main-xxx.c" files for the various new
  149. platforms, and a few other exceptions generally noted in the source, were
  150. written by myself, either spontaneously, or, more commonly, as the result of
  151. a suggestion or comment by an Angband player.  So if you have any problems
  152. with anything that you do not recognize from older versions, you can blame
  153. them on me.  And if you like the new features and such, you can send me a
  154. brief little "thank you" email (to benh@phial.com) or something...
  155.  
  156. The Official Angband Home Page ("http://www.phial.com/")
  157. was created along with Angband 2.7.9 to serve as an up to date description
  158. of any bugs found in various versions, and to list all of the people whose
  159. email addresses I kept having to look up.
  160.  
  161.  
  162. === Some of the changes from Angband 2.6.1 to Angband 2.7.9 ===
  163.  
  164. The most important modification was a massive "code level cleanup" that made
  165. all of my other modifications much simpler and safer.  This cleanup was so
  166. massive that in many places the code is no longer recognizable, for example,
  167. via "diff -r", often because it was rewritten from scratch.
  168.  
  169. The second most important modification was the design of a generic "term.c"
  170. package, which allows Angband to be ported to a new machine with as few as 50
  171. lines of code.  Angband 2.7.9 thus runs without modification on many machines,
  172. including Macintosh, PowerMac, Unix/X11, Unix/Curses, Amiga, Windows, OS2-386,
  173. DOS-386, and even DOS-286.
  174.  
  175. It would be difficult to list all of the changes between Angband 2.6.1 and
  176. Angband 2.7.9, because many of them were made in passing during the massive
  177. code level cleanup.  Many of the changes are invisible to the user, but still
  178. provide increased simplicity and efficiency, and decreased code size, or make
  179. other more visable changes possible.  For example, the new "project()" code
  180. that handles all bolts, beams, and balls, the new "update_view()" code that
  181. simplifies line of sight computation, or the new "generate()" code that builds
  182. new levels in the dungeon.  Many changes have been made to increase efficiency,
  183. including the new "process_monsters()" and "update_monsters()" functions, and
  184. the new "objdes()" and "lite_spot()" routines.  The generic "Term" package
  185. yielded efficient screen updates, and enabled the efficient use of "color".
  186.  
  187. But anyway, here are a few things that come to mind, in no particular order,
  188. and with very little time or effort.  Somehow I managed to put off updating
  189. this file to the very end, and it will just have to do for now.  The recent
  190. changes (and bug fixes) can be found at the Official Angband Home Page.
  191.  
  192.     color
  193.     macros
  194.     keymaps
  195.     user pref files
  196.     generic feature array, with template file
  197.     generic object array, with template file
  198.     generic artifact array, with template file
  199.     generic ego-item array, with template file
  200.     generic monster array, with template fils
  201.     generic vault array, with template file
  202.     binary image files for the template files
  203.     special stat effect tables
  204.     a special table of spells
  205.     a special table of options
  206.     inventory tagging
  207.     inventory restrictions
  208.     using objects off the floor
  209.     various new runtime options
  210.     the new "destroy" command
  211.     the new "examine" command
  212.     the new "note" command
  213.     the new "dump screen" command
  214.     the new "load screen" command
  215.     the new "un-inscribe" command
  216.     the new "change visuals" command
  217.     the new "change colors" command
  218.     the new "change macros" command
  219.     the new "save game" command
  220.     the new "fire" vs "throw" commands
  221.     rearranged equipment slots
  222.     a standard bow slot
  223.     an extra inventory slot
  224.     an underlying keyset
  225.     refueling torches
  226.     better monster memory
  227.     nicer targetting mode
  228.     object stacking
  229.     the recall window
  230.     the choice window
  231.     the mirror window
  232.     new high score code
  233.     special lighting effects
  234.     intelligent monsters
  235.     new monster flags
  236.     text formatting code
  237.     much cleaner store code
  238.     generic spell projections
  239.     scrolls of *identify*
  240.     maximize mode
  241.     preserve mode
  242.     new inscription code
  243.     new message recall code
  244.     new spell and prayer code
  245.     massive cleanup of effects code
  246.     new object allocation routines
  247.     powerful (but simple) on line help
  248.     robust savefile cheat preventers
  249.     new official cheating options
  250.     new blindness code
  251.     new hallucination code
  252.     optimized object description code
  253.     new keypress input routines
  254.     actual object discounts
  255.     fractional (assymptotic) speed
  256.     postponing updates/redraws
  257.     run-time price determination
  258.     better wizard commands
  259.     the automatic player
  260.     launchers of extra shots
  261.     elemental ignore flags
  262.     new ego-item types
  263.     new player ghost creation
  264.     no more sliding objects
  265.     no more sliding monsters
  266.     new object flags
  267.     new chest trap code
  268.     regularized the artifact code
  269.     regularized the ego-item code
  270.     new monster abilities
  271.     new monster spell attacks
  272.     some new store owners
  273.     run-time skill computation
  274.     player kills vs anscestor kills
  275.     better room illumination code
  276.     better group monster code
  277.     table access through pointers
  278.     more redefinable constants
  279.     slightly new screen layout
  280.     extreme code cleaning
  281.     extreme optimizations
  282.  
  283.  
  284. === A Posting from the Original Author ===
  285.  
  286. From: koeneke@ionet.net (Robert Alan Koeneke)
  287. Newsgroups: rec.games.roguelike.angband,rec.games.roguelike.moria
  288. Subject: Early history of Moria
  289. Date: Wed, 21 Feb 1996 04:20:51 GMT
  290.  
  291. I had some email show up asking about the origin of Moria, and its
  292. relation to Rogue.  So I thought I would just post some text on the
  293. early days of Moria.
  294.  
  295. First of all, yes, I really am the Robert Koeneke who wrote the first
  296. Moria.  I had a lot of mail accussing me of pulling their leg and
  297. such.  I just recently connected to Internet (yes, I work for a
  298. company in the dark ages where Internet is concerned) and 
  299. was real surprised to find Moria in the news groups...  Angband was an
  300. even bigger surprise, since I have never seen it.  I probably spoke to
  301. its originator though...  I have given permission to lots of people
  302. through the years to enhance, modify, or whatever as long as they
  303. freely distributed the results.  I have always been a proponent of
  304. sharing games, not selling them.
  305.  
  306. Anyway...
  307.  
  308. Around 1980 or 81 I was enrolled in engineering courses at the
  309. University of Oklahoma.  The engineering lab ran on a PDP 1170 under
  310. an early version of UNIX.  I was always good at computers, so it was
  311. natural for me to get to know the system administrators.  They invited
  312. me one night to stay and play some games, an early startrek game, The
  313. Colossal Cave Adventure (later just 'Adventure'), and late one night,
  314. a new dungeon game called 'Rogue'.
  315.  
  316. So yes, I was exposed to Rogue before Moria was even a gleam in my
  317. eye.  In fact, Rogue was directly responsible for millions of hours of
  318. play time wasted on Moria and its descendents...
  319.  
  320. Soon after playing Rogue (and man, was I HOOKED), I got a job in a
  321. different department as a student assistant in computers.  I worked on
  322. one of the early VAX 11/780's running VMS, and no games were available
  323. for it at that time.  The engineering lab got a real geek of an
  324. administrator who thought the only purpose of a computer was WORK!
  325. Imagine...  Soooo, no more games, and no more rogue!
  326.  
  327. This was intolerable!  So I decided to write my own rogue game, Moria
  328. Beta 1.0.  I had three languages available on my VMS system.  Fortran
  329. IV, PASCAL V1.?, and BASIC.  Since most of the game was string
  330. manipulation, I wrote the first attempt at Moria in VMS BASIC, and it
  331. looked a LOT like Rogue, at least what I could remember of it.  Then I
  332. began getting ideas of how to improve it, how it should work
  333. differently, and I pretty much didn't touch it for about a year.
  334.  
  335. Around 1983, two things happened that caused Moria to be born in its
  336. recognizable form.  I was engaged to be married, and the only cure for
  337. THAT is to work so hard you can't think about it; and I was enrolled
  338. for fall to take an operating systems class in PASCAL.
  339.  
  340. So, I investigated the new version of VMS PASCAL and found out it had
  341. a new feature.  Variable length strings!  Wow...
  342.  
  343. That summer I finished Moria 1.0 in VMS PASCAL.  I learned more about
  344. data structures, optimization, and just plain programming that summer
  345. then in all of my years in school.  I soon drew a crowd of devoted
  346. Moria players...  All at OU.
  347.  
  348. I asked Jimmey Todd, a good friend of mine, to write a better
  349. character generator for the game, and so the skills and history were
  350. born.  Jimmey helped out on many of the functions in the game as well.
  351. This would have been about Moria 2.0
  352.  
  353. In the following two years, I listened a lot to my players and kept
  354. making enhancements to the game to fix problems, to challenge them,
  355. and to keep them going.  If anyone managed to win, I immediately found
  356. out how, and 'enhanced' the game to make it harder.  I once vowed it
  357. was 'unbeatable', and a week later a friend of mine beat it!  His
  358. character, 'Iggy', was placed into the game as 'The Evil Iggy', and
  359. immortalized...  And of course, I went in and plugged up the trick he
  360. used to win...
  361.  
  362. Around 1985 I started sending out source to other universities.  Just
  363. before a OU / Texas football clash, I was asked to send a copy to the
  364. Univeristy of Texas...  I couldn't resist...  I modified it so that
  365. the begger on the town level was 'An OU football fan' and they moved
  366. at maximum rate.  They also multiplied at maximum rate...  So the
  367. first step you took and woke one up, it crossed the floor increasing
  368. to hundreds of them and pounded you into oblivion...  I soon received
  369. a call and provided instructions on how to 'de-enhance' the game!
  370.  
  371. Around 1986 - 87 I released Moria 4.7, my last official release.  I
  372. was working on a Moria 5.0 when I left OU to go to work for American
  373. Airlines (and yes, I still work there).  Moria 5.0 was a complete
  374. rewrite, and contained many neat enhancements, features, you name it.
  375. It had water, streams, lakes, pools, with water monsters.  It had
  376. 'mysterious orbs' which could be carried like torches for light but
  377. also gave off magical aura's (like protection from fire, or aggrivate
  378. monster...).  It had new weapons and treasures...  I left it with the
  379. student assistants at OU to be finished, but I guess it soon died on
  380. the vine.  As far as I know, that source was lost...
  381.  
  382. I gave permission to anyone who asked to work on the game.  Several
  383. people asked if they could convert it to 'C', and I said fine as long
  384. as a complete credit history was maintained, and that it could NEVER
  385. be sold, only given.  So I guess one or more of them succeeded in
  386. their efforts to rewrite it in 'C'.
  387.  
  388. I have since received thousands of letters from all over the world
  389. from players telling about their exploits, and from administrators
  390. cursing the day I was born...  I received mail from behind the iron
  391. curtain (while it was still standing) talking about the game on VAX's
  392. (which supposedly couldn't be there due to export laws).  I used to
  393. have a map with pins for every letter I received, but I gave up on
  394. that!
  395.  
  396. I am very happy to learn my creation keeps on going...  I plan to
  397. download it and Angband and play them...  Maybe something has been
  398. added that will surprise me!  That would be nice...  I never got to
  399. play Moria and be surprised...
  400.  
  401. Robert Alan Koeneke
  402. koeneke@ionet.net
  403.  
  404.  
  405. === Previous Versions (outdated) ===
  406.  
  407.  
  408.                           VMS Moria Version 4.8
  409. Version 0.1  : 03/25/83
  410. Version 1.0  : 05/01/84
  411. Version 2.0  : 07/10/84
  412. Version 3.0  : 11/20/84
  413. Version 4.0  : 01/20/85
  414.  
  415. Modules :
  416.      V1.0  Dungeon Generator      - RAK
  417.            Character Generator    - RAK & JWT
  418.            Moria Module           - RAK
  419.            Miscellaneous          - RAK & JWT
  420.      V2.0  Town Level & Misc      - RAK
  421.      V3.0  Internal Help & Misc   - RAK
  422.      V4.0  Source Release Version - RAK
  423.  
  424. Robert Alan Koeneke               Jimmey Wayne Todd Jr.
  425. Student/University of Oklahoma    Student/University of Oklahoma
  426.  
  427.  
  428.  
  429.  
  430.  
  431.                         Umoria Version 5.2 (formerly UNIX Moria)
  432. Version 4.83 :  5/14/87
  433. Version 4.85 : 10/26/87
  434. Version 4.87 :  5/27/88
  435. Version 5.0  :  11/2/89
  436. Version 5.2  :   5/9/90
  437.  
  438. James E. Wilson, U.C. Berkeley
  439.                  wilson@ernie.Berkeley.EDU
  440.                  ...!ucbvax!ucbernie!wilson
  441.  
  442. Other contributors:
  443. D. G. Kneller         - MSDOS Moria port
  444. Christopher J. Stuart - recall, options, inventory, and running code
  445. Curtis McCauley       - Macintosh Moria port
  446. Stephen A. Jacobs     - Atari ST Moria port
  447. William Setzer        - object naming code
  448. David J. Grabiner     - numerous bug reports, and consistency checking
  449. Dan Bernstein         - UNIX hangup signal fix, many bug fixes
  450. and many others...
  451.  
  452.  
  453.  
  454.  
  455. Copyright (c) 1989 James E. Wilson, Robert A. Keoneke
  456.   This software may be copied and distributed for educational, research, and
  457.   not for profit purposes provided that this copyright and statement are
  458.   included in all such copies.
  459.  
  460. Umoria Version 5.2, patch level 1
  461.  
  462. Angband Version 2.0   Alex Cutler, Andy Astrand, Sean Marsh, Geoff Hill, 
  463.                       Charles Teague.
  464.  
  465. Angband Version 2.4   :  5/09/93
  466.  
  467. Angband Version 2.5   : 12/05/93 Charles Swiger.
  468.  
  469. Angband Version 2.6   :  9/04/94
  470.  
  471. Angband Version 2.7   :  1/1/95  Ben Harrison
  472.  
  473.  
  474.